//
//  UIView+XLLevelInView.h
//  digital_robot_demo
//
//  Created by xskj on 2024/9/26.
//

#import <UIKit/UIKit.h>

NS_ASSUME_NONNULL_BEGIN

@interface UIView (XLLevelInView)

// 要获取视图在指定视图上的层级
+ (NSInteger)viewLevelInView:(UIView *)view;
//使用方法：
//UIView *targetView = ...; // 目标视图
//UIView *rootView = ...; // 根视图
//NSInteger level = [self viewLevelInView:targetView];
//NSLog(@"视图层级： %ld", (long)level);



//以下是一个示例方法，它接收两个UIView参数：targetView（你想要获取层级的视图）和superView（指定的父视图），然后返回targetView在superView子视图数组中的索引（层级）。如果targetView不是superView的子视图，则返回-1表示未找到
+ (NSInteger)indexOfView:(UIView *)targetView inSuperView:(UIView *)superView;
//注意，indexOfObject:方法返回的是NSUInteger类型，但在上面的代码中，我将其返回类型声明为NSInteger，这是为了兼容可能返回-1（表示未找到）的情况。在实际情况中，如果你确信targetView一定是superView的子视图，你可以将返回类型声明为NSUInteger。


@end

NS_ASSUME_NONNULL_END

